Network nodes forward data. Network nodes may take form in one or more routers, one or more bridges, one or more switches, one or more servers, or any other suitable communications processing device. The data is commonly formatted as packets and forwarded using forwarding tables. A packet is a formatted unit of data that typically contains control information and payload data. Control information may include: information that identifies sources and destinations, such as addresses, error detection codes like checksums, sequencing information, etc. Control information is typically found in packet headers and trailers. Payload data is typically located between the packet headers and trailers.
Forwarding packets involves various processes that, while simple in concept, can be complex. The processes involved in forwarding packets vary, depending on the type of forwarding method used. In some networks, the potential exists for packet looping and delivery of duplicate copies of packets to receivers. Packet looping and the unnecessary delivery of duplicate copies of packets represent unwelcome burdens on network performance. Another potential issue networks is packet loss. For example, during periods of network reconfiguration, it is possible that packets are dropped and that data thus fails to reach receivers. Preventing or minimizing packet loss is an important aspect of network design.